package com.zjzk.demo.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zjzk.common.core.annotation.Excel;
import com.zjzk.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

public class WorkingRecord extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 主键 */
    @Excel(name = "参数主键", cellType = Excel.ColumnType.NUMERIC)
    private Long wrId;

    /** 标识卡Id */
    @Excel(name = "标识卡Id")
    public Long cardId;

    /** 作业日期 */
    @Excel(name = "作业日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date date;

    /** 入井时间 */
    @Excel(name = "入井时间")
    private Date inTime;

    /** 入井井口 */
    @Excel(name = "入井井口")
    private String inWellhead;

    /** 出井时间 */
    @Excel(name = "出井井口")
    private Date outTime;

    /** 出井井口 */
    @Excel(name = "出井井口")
    private String outWellhead;

    /** 当前定位基站id */
    @Excel(name = "当前定位基站id")
    public Long currentStationId;

    /** 工作时长（min) */
    @Excel(name = "工作时长（min)")
    public Long workingHour;

    /** 基站检测状态（0正常 1未处于检测范围内） */
    @Excel(name = "基站检测状态", readConverterExp = "0=正常,1=未处于检测范围内")
    public String detectStatus;

    public Long getWrId() {
        return wrId;
    }

    public void setWrId(Long wrId) {
        this.wrId = wrId;
    }

    public Long getCardId() {
        return cardId;
    }

    public void setCardId(Long cardId) {
        this.cardId = cardId;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public Date getInTime() {
        return inTime;
    }

    public void setInTime(Date inTime) {
        this.inTime = inTime;
    }

    public String getInWellhead() {
        return inWellhead;
    }

    public void setInWellhead(String inWellhead) {
        this.inWellhead = inWellhead;
    }

    public Date getOutTime() {
        return outTime;
    }

    public void setOutTime(Date outTime) {
        this.outTime = outTime;
    }

    public String getOutWellhead() {
        return outWellhead;
    }

    public void setOutWellhead(String outWellhead) {
        this.outWellhead = outWellhead;
    }

    public Long getCurrentStationId() {
        return currentStationId;
    }

    public void setCurrentStationId(Long currentStationId) {
        this.currentStationId = currentStationId;
    }

    public Long getWorkingHour() {
        return workingHour;
    }

    public void setWorkingHour(Long workingHour) {
        this.workingHour = workingHour;
    }

    public String getDetectStatus() {
        return detectStatus;
    }

    public void setDetectStatus(String detectStatus) {
        this.detectStatus = detectStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("wrId", getWrId())
                .append("cardId", getCardId())
                .append("date", getDate())
                .append("inTime", getInTime())
                .append("inWellhead", getInWellhead())
                .append("outTime", getOutTime())
                .append("outWellhead", getOutWellhead())
                .append("currentStationId", getCurrentStationId())
                .append("workingHour", getWorkingHour())
                .append("detectStatus", getDetectStatus())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
